#ifndef pktoon_Guard_h
#define pktoon_Guard_h

namespace catan
{
	template<typename LockObject>
	class Guard
	{
	public:
		Guard(LockObject& obj)
			: mObj(obj)
		{
			mObj.Acquire();
		}
		~Guard()
		{
			mObj.Release();
		}
	private:
		LockObject& mObj;
	};
}

#endif
